*****************************************************************************************************
* DIVERSIONARY DESECRATION? Regime Instability and Societal Violence against Minority Sacred Spaces *
* Ariel Zellman and Andrea Malji; Politics, Religion & Ideology (2023) *
************************************************************************

******************************
*** minor vandalism graphs ***
******************************

quietly mlogit wzsocdis_sitetargeting_alt mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow) nolog 

margins, at(v2x_polyarchy=(0.00(0.20)1.00)) predict(outcome(1))

marginsplot, title("") ytitle("") xtitle(Polyarchy) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-.05(.05).30, angle(0)) xline(0.282 0.532 0.791 0.876 0.892 0.913, lcolor(gs10) lpattern(dash)) saving(vdem1)

margins, at(mmxx=(0(5)52)) predict(outcome(1))

marginsplot, title("") ytitle("") xtitle(GRD) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-.05(.05).30, angle(0)) xlabel(0(10)50) xline(0 2 8 17 24 38, lcolor(gs10) lpattern(dash)) saving(grd1)

margins, at(wzmin2majx=(0(1)6)) predict(outcome(1))

marginsplot, title("") ytitle("") xtitle(Minority Incitement) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-.05(.05).30, angle(0)) xline(0 3, lcolor(gs10) lpattern(dash)) saving(incite1)

margins, at(unempl_youthm_ilo=(0(5)70)) predict(outcome(1))

marginsplot, title("") ytitle("") xtitle(Youth Male Unemployment) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-.05(.05).30, angle(0)) xlabel(0(10)70) xline(7.207 13.245 20.834 31.367 39.835 55.099, lcolor(gs10) lpattern(dash)) saving(ymunemp1)

margins, at(max_couprisk=(0(0.01)0.15)) predict(outcome(1))

marginsplot, title("") ytitle("") xtitle(Max Coup Risk) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-.05(.05).30, angle(0)) xlabel(0(.03).15) xline(0.0006 0.0017 0.0043 0.0078 0.0119 0.0285, lcolor(gs10) lpattern(dash)) saving(coup1)

margins, at(lxx=(0(6)36)) predict(outcome(1))

marginsplot, title("") ytitle("") xtitle(GRS) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-.05(.05).30, angle(0)) xline(5 7 12 24 29 36, lcolor(gs10) lpattern(dash)) saving(grs1)

gr combine vdem1.gph grd1.gph incite1.gph ymunemp1.gph coup1.gph grs1.gph, col(6) iscale(1) ysize(1) xsize(5.5) scale(1.5) note("*Vertical dashed lines denote percentiles: 25, 50, 75, 90, 95, 99", position(5))

*********************************************
*** major vandalism/minor violence graphs ***
*********************************************

quietly mlogit wzsocdis_sitetargeting_alt mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow) nolog 

margins, at(v2x_polyarchy=(0.00(0.20)1.00)) predict(outcome(2))

marginsplot, title("") ytitle("") xtitle(Polyarchy) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(0(.1)1, angle(0)) xline(0.282 0.532 0.791 0.876 0.892 0.913, lcolor(gs10) lpattern(dash)) saving(vdem2)

margins, at(mmxx=(0(5)52)) predict(outcome(2))

marginsplot, title("") ytitle("") xtitle(GRD) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(0(.1)1, angle(0)) xlabel(0(10)50) xline(0 2 8 17 24 38, lcolor(gs10) lpattern(dash)) saving(grd2)

margins, at(wzmin2majx=(0(1)6)) predict(outcome(2))

marginsplot, title("") ytitle("") xtitle(Minority Incitement) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(0(.1)1, angle(0)) xline(0 3, lcolor(gs10) lpattern(dash)) saving(incite2)

margins, at(unempl_youthm_ilo=(0(5)70)) predict(outcome(2))

marginsplot, title("") ytitle("") xtitle(Youth Male Unemployment) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(0(.1)1, angle(0)) xlabel(0(10)70) xline(7.207 13.245 20.834 31.367 39.835 55.099, lcolor(gs10) lpattern(dash)) saving(ymunemp2)

margins, at(max_couprisk=(0(0.01)0.15)) predict(outcome(2))

marginsplot, title("") ytitle("") xtitle(Max Coup Risk) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(0(.1)1, angle(0)) xlabel(0(.03).15) xline(0.0006 0.0017 0.0043 0.0078 0.0119 0.0285, lcolor(gs10) lpattern(dash)) saving(coup2)

margins, at(lxx=(0(6)36)) predict(outcome(2))

marginsplot, title("") ytitle("") xtitle(GRS) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(0(.1)1, angle(0)) xline(5 7 12 24 29 36, lcolor(gs10) lpattern(dash)) saving(grs2)

gr combine vdem2.gph grd2.gph incite2.gph ymunemp2.gph coup2.gph grs2.gph, col(6) iscale(1) ysize(1) xsize(5.5) scale(1.5) note("*Vertical dashed lines denote percentiles: 25, 50, 75, 90, 95, 99", position(5))

*****************************
*** major violence graphs ***
*****************************

quietly mlogit wzsocdis_sitetargeting_alt mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow) nolog 

margins, at(v2x_polyarchy=(0.00(0.20)1.00)) predict(outcome(3))

marginsplot, title("") ytitle("") xtitle(Polyarchy) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-0.15(.15).90 1 1.10, angle(0)) xline(0.282 0.532 0.791 0.876 0.892 0.913, lcolor(gs10) lpattern(dash)) saving(vdem3)

margins, at(mmxx=(0(5)52)) predict(outcome(3))

marginsplot, title("") ytitle("") xtitle(GRD) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-0.15(.15).90 1 1.10, angle(0)) xlabel(0(10)50) xline(0 2 8 17 24 38, lcolor(gs10) lpattern(dash)) saving(grd3)

margins, at(wzmin2majx=(0(1)6)) predict(outcome(3))

marginsplot, title("") ytitle("") xtitle(Minority Incitement) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-0.15(.15).90 1 1.10, angle(0)) xline(0 3, lcolor(gs10) lpattern(dash)) saving(incite3)

margins, at(unempl_youthm_ilo=(0(5)70)) predict(outcome(3))

marginsplot, title("") ytitle("") xtitle(Youth Male Unemployment) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-0.15(.15).90 1 1.10, angle(0)) xlabel(0(10)70) xline(7.207 13.245 20.834 31.367 39.835 55.099, lcolor(gs10) lpattern(dash)) saving(ymunemp3)

margins, at(max_couprisk=(0(0.01)0.15)) predict(outcome(3))

marginsplot, title("") ytitle("") xtitle(Max Coup Risk) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-0.15(.15).90 1 1.10, angle(0)) xlabel(0(.03).15) xline(0.0006 0.0017 0.0043 0.0078 0.0119 0.0285, lcolor(gs10) lpattern(dash)) saving(coup3)

margins, at(lxx=(0(6)36)) predict(outcome(3))

marginsplot, title("") ytitle("") xtitle(GRS) recast(line) ciopts(recast(rarea)) graphregion(color(white)) bgcolor(white) ylabel(-0.15(.15).90 1 1.10, angle(0)) xline(5 7 12 24 29 36, lcolor(gs10) lpattern(dash)) saving(grs3)

gr combine vdem3.gph grd3.gph incite3.gph ymunemp3.gph coup3.gph grs3.gph, col(6) iscale(1) ysize(1) xsize(5.5) scale(1.5) note("*Vertical dashed lines denote percentiles: 25, 50, 75, 90, 95, 99", position(5))


*************************************************
* Comparison Graphs, Sacred Sites v. Minorities *
*************************************************

* MODEL 2 - Violence v Sacred Sites *

quietly mlogit wzsocdis25x mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow)

margins, at(wzmin2majx=(0(1)6)) predict(outcome(3)) post

estimates store incite_sacred

quietly mlogit wzsocdis25x mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow)

margins, at(max_couprisk=(0(0.01)0.15)) predict(outcome(3)) post

estimates store coup_sacred

quietly mlogit wzsocdis25x mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow)

margins, at(v2x_polyarchy=(0.00(0.20)1.00)) predict(outcome(3)) post

estimates store vdem_sacred

quietly mlogit wzsocdis25x mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow)

margins, at(lxx=(0(6)36)) predict(outcome(3)) post

estimates store lxx_sacred


* MODEL 3 - Violence v Minorities *

quietly mlogit wzsocdis23x mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow)

margins, at(wzmin2majx=(0(1)6)) predict(outcome(3)) post

estimates store incite_min

quietly mlogit wzsocdis23x mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow)

margins, at(max_couprisk=(0(0.01)0.15)) predict(outcome(3)) post

estimates store coup_min

quietly mlogit wzsocdis23x mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow)

margins, at(v2x_polyarchy=(0.00(0.20)1.00)) predict(outcome(3)) post

estimates store vdem_min

quietly mlogit wzsocdis23x mmxx lxx wzmin2majx v2x_polyarchy cpi_pchg unempl_youthm_ilo max_couprisk zpop ezmajpctx minpctx fraction_rasm polarize_rasm shared_religion i.year, vce(cluster group_cow)

margins, at(lxx=(0(6)36)) predict(outcome(3)) post

estimates store lxx_min


* FINAL PLOTS:

coefplot (incite_sacred, offset(0.001))(incite_min, offset(-0.001)), nokey vertical recast(line) lwidth(*2) ciopts(recast(rarea) color(%40)) xlabel(1 "0" 2 "1" 3 "2" 4 "3" 5 "4" 6 "5" 7 "6") xline(1 4, lcolor(gs10) lpattern(dash)) xtitle(Minority Incitement) saving(incite_comp)

coefplot (coup_sacred, offset(0.001))(coup_min, offset(-0.001)), nokey vertical recast(line) lwidth(*2) ciopts(recast(rarea) color(%40)) xlabel(1 "0" 4 ".03" 7 ".06" 10 ".09" 13 ".12" 16 ".15") xline(1.06 1.17 1.43 1.78 2.19 3.85, lcolor(gs10) lpattern(dash)) xtitle(Max Coup Risk) saving(coup_comp)

coefplot (vdem_sacred, offset(0.001))(vdem_min, offset(-0.001)), nokey vertical recast(line) lwidth(*2) ciopts(recast(rarea) color(%40)) xlabel(1 "0" 2 ".2" 3 ".4" 4 ".6" 5 ".8" 6 "1") xline(2.41 3.66 4.955 5.38 5.46 5.565, lcolor(gs10) lpattern(dash)) xtitle(Polyarchy) saving(vdem_comp)

coefplot (lxx_sacred, offset(0.001))(lxx_min, offset(-0.001)), nokey vertical recast(line) lwidth(*2) ciopts(recast(rarea) color(%40)) xlabel(1 "0" 2 "6" 3 "12" 4 "18" 5 "24" 6 "30" 7 "36") xline(1.833 2.167 3 5 5.83 7, lcolor(gs10) lpattern(dash)) xtitle(GRS) saving(grs_comp)

gr combine incite_comp.gph coup_comp.gph vdem_comp.gph grs_comp.gph, col(4) iscale(1) ysize(1) xsize(5.5) scale(1.5) note("*Vertical dashed lines denote percentiles: 25, 50, 75, 90, 95, 99", position(5))



